Systems and methods for the analysis of moving objects

ABSTRACT

Methods and apparatus for the analysis of moving objects. In one embodiment, a pitch tracking system is disclosed that includes one or more cameras that have been positioned in a desired location and a computing system containing executable software that is configured to receive imaging data from the one or more cameras that captured the desired location and analyze seam placement and/or finger placement as a function of time for the received imaging data. Computer readable media and methodologies are also disclosed herein.

PRIORITY

This application claims the benefit of priority to U.S. ProvisionalPatent Application Ser. No. 62/902,015 filed Sep. 18, 2019 of the sametitle, the contents of which being incorporated herein by reference inits entirety.

COPYRIGHT

A portion of the disclosure of this patent document contains materialthat is subject to copyright protection. The copyright owner has noobjection to the facsimile reproduction by anyone of the patent documentor the patent disclosure, as it appears in the Patent and TrademarkOffice patent files or records, but otherwise reserves all copyrightrights whatsoever.

BACKGROUND OF THE DISCLOSURE 1. Technological Field

The present disclosure relates generally to the field of motion capturedata analysis using captured video information. For example, embodimentsof the present disclosure relate to the analysis of hand/fingerplacement with relation to the center of mass of a baseball in order to,inter alia, assist with improved body mechanics when, for example,pitching a baseball.

2. Field of the Disclosure

Data analytics within professional and amateur sports is a growingindustry. These analytics provide additional information to, forexample, general managers, recruiters, coaches, trainers and players inorder to achieve more successful outcomes for the teams and the playersthemselves. For example, the analysis of the motion of a moving object,such as a pitched baseball has gained increasingly widespread adoptionthroughout the industry. This analysis utilizes several differingapproaches. One approach utilizes image capture to assist with thedetermination of spin axis as well as spin rate for a pitched baseball.Another approach utilizes signals transmitted from and received by aDoppler radar system to measure the speed and spin rate for a thrownobject. Yet another approach utilizes motion sensors, where sensor dataobtained from the motion sensors is collected and analyzed to measurethe properties of the pitched baseball. Each of these differingapproaches provides valuable information that is utilized to provide acompetitive advantage to both the players and the teams themselves.

Although these prior techniques are beneficial as evidenced by theirwidespread adoption throughout the industry, each of these motiontracking techniques focuses on the results of the observed motion oncethe ball is in flight. It would be desirable if techniques weredeveloped that were able to not only accurately measure the results ofthe observed motion, but also provide insights into how that observedmotion was achieved.

SUMMARY

The present disclosure satisfies the foregoing needs by providing, interalia, improved methods and apparatus for the analysis of moving objects.

In one aspect, a computer-implemented method for determining fingerplacement with respect to a pitched baseball is disclosed. In oneembodiment, the method includes capturing a scene of the pitchedbaseball; segmenting an object of interest out of the captured sceneusing a thresholding operation to generate a segmented scene; analyzingthe segmented scene to identify markers associated with the object ofinterest; and comparing the analyzed scene with a prior captured sceneso as to enable a comparison in performance for the pitched baseball.

In one variant, the segmenting of the object of interest includesperforming the thresholding operation on a pixel-by-pixel basis todetermine a subset of the captured scene for the pitched baseball.

In another variant, the performing of the thresholding operation on thepixel-by-pixel basis includes starting the thresholding operation in anarea of the captured scene dependent upon a handedness for a pitcher ofthe pitched baseball.

In yet another variant, the performing of the thresholding operation onthe pixel-by-pixel basis includes determining a location of the objectof interest within a first frame of a plurality of frames of thecaptured scene and utilizing the determined location of the object ofinterest within the first frame to determine the location of the objectof interest within a second frame of the plurality of frames.

In yet another variant, the performing of the thresholding operation onthe pixel-by-pixel basis for the second frame of the plurality of framesis only performed on a subset of pixels of the second frame.

In yet another variant, the determining of the location of the object ofinterest includes determining that a pixel value for a pixel within thefirst frame is within a predetermined range of pixel values.

In yet another variant, the capturing of the scene of the pitchedbaseball includes capturing a plurality of frames of the captured sceneand the segmenting of the object of interest out of the captured scenefurther includes repositioning the object of interest within thesegmented scene within each of the plurality of frames.

In yet another variant, the analyzing of the segmented scene furtherincludes performing a second thresholding operation on the segmentedscene to identify the markers associated with the object of interest.

In yet another variant, the performing of the second thresholdingoperation includes determining placement of a finger with respect to ageometric center of the pitched baseball.

In yet another variant, the performing of the second thresholdingoperation further includes determining seam orientation with respect tothe geometric center of the pitched baseball.

In another aspect, a non-transitory computer-readable storage apparatusis disclosed. In one embodiment, the non-transitory computer-readablestorage apparatus includes instructions, that when executed by aprocessor apparatus, are configured to: receive a plurality of frames ofa captured scene of a pitched baseball; segment an object of interestout of the captured scene via use of a thresholding operation togenerate a segmented scene; analyze the segmented scene to identifymarkers associated with the object of interest; and compare the analyzedscene with a prior captured scene so as to enable a comparison inperformance for the pitched baseball.

In one variant, the segmentation of the object of interest includesperformance of the thresholding operation on a pixel-by-pixel basis todetermine a subset of the captured scene for the pitched baseball.

In another variant, the performance of the thresholding operation on thepixel-by-pixel basis includes commencement of the thresholding operationin an area of the captured scene that is dependent upon a handedness fora pitcher of the pitched baseball.

In yet another variant, the performance of the thresholding operation onthe pixel-by-pixel basis includes determination of a location of theobject of interest within a first frame of a plurality of frames of thecaptured scene and utilization of the determined location of the objectof interest within the first frame to determine the location of theobject of interest within a second frame of the plurality of frames.

In yet another variant, the performance of the thresholding operation onthe pixel-by-pixel basis for the second frame of the plurality of framesis only performed on a subset of pixels of the second frame.

In yet another variant, the determination of the location of the objectof interest includes determination that a pixel value for a pixel withinthe first frame is within a predetermined range of pixel values.

In yet another variant, the segmentation of the object of interest outof the captured scene further includes a reposition operation of theobject of interest within the segmented scene within each of theplurality of frames.

In yet another variant, the analysis of the segmented scene furthercomprises performance of a second thresholding operation on thesegmented scene to identify the markers associated with the object ofinterest.

In yet another variant, the performance of the second thresholdingoperation includes determination of placement of a finger with respectto a geometric center of the pitched baseball.

In yet another variant, the performance of the second thresholdingoperation further includes determination of seam orientation withrespect to the geometric center of the pitched baseball.

In yet another aspect, a pitch tracking system is disclosed. In oneembodiment, the pitch tracking system includes one or more cameras thathave been positioned in one or more desired locations and a computingsystem containing executable software that is configured to receiveimaging data from the one or more cameras that captured the desiredlocation and analyze seam placement and finger placement as a functionof time for the received imaging data.

In yet another aspect, a method of tracking a pitch is disclosed. In oneembodiment, the method includes receiving one or more captured images,identifying one or more marker locations within the captured images,overlaying a circle and crosshairs on the captured images, and removingthe background image with the exception of the identified markerlocations.

In yet another aspect, a method of altering a viewpoint within avirtualized scene is disclosed. In one embodiment, the method includescapturing a scene using one or more cameras, virtualizing the capturedscene and altering the viewpoint within the virtualized scene.

In yet another aspect, a method for estimating the velocity of a pitchedbaseball based on a baseline measurement and one or more subsequentimage captures is disclosed.

Other features and advantages of the present disclosure will immediatelybe recognized by persons of ordinary skill in the art with reference tothe attached drawings and detailed description of exemplaryimplementations as given below.

BRIEF DESCRIPTION OF THE DRAWINGS

The features, objectives, and advantages of the present disclosure willbecome more apparent from the detailed description set forth below whentaken in conjunction with the drawings, wherein:

FIGS. 1A-1E are a series of images from an exemplary video capture of athrown baseball immediately prior to release, in accordance with theprinciples of the present disclosure.

FIGS. 2A-2F are a series of analyses for the exemplary video capture ofFIGS. 1A-1E, in accordance with the principles of the presentdisclosure.

FIG. 3 is an exemplary tracking system for image capture of pitchedbaseballs, in accordance with the principles of the present disclosure.

FIG. 4 is a logical flow diagram illustrating one exemplary methodologyfor utilizing data captured by, for example, the exemplary trackingsystem of FIG. 3 in order to provide additional information about themoving object, in accordance with the principles of the presentdisclosure.

FIG. 5 is a graphical depiction of various parameters as a function ofdistance, in accordance with the principles of the present disclosure.

FIG. 6 is a logical flow diagram illustrating one exemplary methodologyfor estimating velocity based on baseline and subsequent imagecapture(s), in accordance with the principles of the present disclosure.

-   -   All Figures disclosed herein are © Copyright 2019    -   Trevor Bauer and Warren Bauer. All rights reserved.

DETAILED DESCRIPTION Exemplary Embodiments

Detailed descriptions of the various embodiments and variants of theapparatus and methods of the present disclosure are now provided. It isnoted that wherever practicable similar or like reference numbers may beused in the figures and may indicate similar or like functionality. Thefigures depict embodiments of the disclosed system (or methods) forpurposes of illustration only. One skilled in the art will readilyrecognize from the following description that alternative embodiments ofthe structures and methods illustrated herein may be employed withoutnecessarily departing from the principles described herein.

While primarily discussed in the context of the application of videoanalysis to a thrown baseball, it would be readily apparent that theprinciples of the present disclosure described herein has broaderutility outside of the game of baseball. For example, the techniques andapparatus described may find utility in other sports including, withoutlimitation, softball, cricket, football, soccer, various track and fieldevents, bowling, and the like. These and other variants would be readilyapparent to one of ordinary skill given the contents of the presentdisclosure.

Exemplary Operating Examples—

Referring now to FIGS. 1A-1E, one exemplary video analysis example 100is shown and described in detail. In particular, FIG. 1A shows aright-handed pitcher in his motion at time to, FIG. 1B shows the pitcherin his motion at time t₁, FIG. 1C shows the pitcher in his motion attime t₂, FIG. 1D shows the pitcher in his motion at time t₃, while FIG.1E shows the pitcher in his motion at time t₄. At to, the baseball 102appears in the lower-left portion of the captured frame, at t₁ thebaseball 102 has translated up and to the right of the position of thebaseball 102 at to, at t₂ the baseball 102 has again translated up andto the right of the position of the baseball 102 at t₁, at t₃ thebaseball 102 is nearly in the center of the captured frame, and at t₄the baseball 102 is in the center of the frame and has just beenreleased by the pitcher. As shown in this exemplary sequence of images,the camera that captured these images is positioned such that the camerais in-line with the baseball 102 and the center of the strike zone atthe release point of the ball. While such alignment may be exemplary, itwould be readily apparent to one of ordinary skill given the contents ofthe present disclosure that other such positioning may be used inaddition to, or alternatively than, this exemplary alignment (e.g., at a45° angle in front of the pitcher on the side of the pitcher's throwingarm. See e.g., FIG. 3).

The framerate captured by the camera may capture images at two thousand(2,000) frames per second (fps) in some implementations. However, inother variants the framerate captured by the camera may capture imagesat a higher framerate (e.g., three thousand (3,000) fps or faster).Conversely, in some implementations the framerate captured may captureimages at a lower framerate (e.g., one hundred twenty (120) fps, twohundred forty (240) fps, and/or sixty (60) fps, etc.). In someimplementations, the baseball 102 (or immediate area surrounding thebaseball 102) may be segmented out from the background scenery via useof a thresholding image processing technique. As a brief aside,thresholding may take a captured scene and may analyze the pixels of thecaptured scene to determine one or more objects of interest. Theanalysis of the pixels of the captured scene may be traversedsequentially from left-to-right, followed by top-to-bottom for eachframe of the captured scene. Via this traversal of pixels, thepositioning of the baseball within the captured scene may be determinedas the pixel values of the baseball may be expected within a certainrange of pixel values as compared with the pixel values of thebackground scene. In some implementations, the background colors for thebackground scene may be chosen so that there is increased contrastbetween the baseball and the background scene. However, in many commonscenarios for image capture (e.g., within a gym on a baseball field,etc.), the contrast between the pixel values associated with thebaseball and the pixel values associated with background scene aretypically different enough that the positioning of the baseball can bequickly and reliably determined.

In the specific example illustrated in FIGS. 1A-1E, the analysis of thepixel values may be performed in a left-to-right and bottom-to-topmanner for right-handed pitchers, while the analysis of the pixel valuesmay be performed in a right-to-left and bottom-to-top manner for lefthanded pitchers. For example, as seen in FIG. 1A, the baseball 102 isbeing pitched by a right-handed pitcher and accordingly, the baseball102 at time to will be expected to appear in left-hand bottom cornerportion of the captured scene. However, if the baseball 102 is beingpitched by a left-handed pitcher, the baseball at time to will beexpected to appear in the right-hand bottom corner portion of thecaptured scene. Accordingly, the analysis for determination of thepositioning of the baseball may be optimized by knowing whether thepitcher is right-handed or left-handed prior to performing the per-pixelthresholding analysis.

Once a pixel value has been determined to be a pixel value associatedwith a baseball 102 (i.e., within a predetermined range of pixelvalues), the traversal may continue along, for example, a given rowuntil pixel values associated with the baseball 102 are no longer beingdetermined for a predetermined number of pixels (e.g., fifty (50)pixels, one-hundred (100) pixels, or two-hundred (200) pixels after lossof detection or any other suitable number of pixel values). Uponreaching this predetermined number of pixels without determining thatany of the pixel values is of a baseball 102, the traversal fromleft-to-right (or right-to-left) may stop and the process may berepeated for the next row. Moreover, as the pixel analysis continues up(or down) the rows of the captured image, the pixel analysis may stopafter a predetermined number of rows upon a loss of detection of thebaseball 102. In other words, the analysis of the pixel values withinthe captured frame may intelligently determine the positioning of thebaseball 102 without requiring that the entire frame be analyzed,thereby significantly improving upon the speed of the analysis (as wellas reducing memory and processing requirements) for determining thepositioning of the baseball 102 within the captured scene. In someimplementations, the determination of the positioning of the baseball102 within a given frame may be utilized in the analysis for thedetermination of the positioning of the baseball 102 in a subsequent (orpreceding) frame. In other words, because the expected motion of thebaseball 102 is known, the amount of pixels that require analysis withina given captured frame may be reduced as compared with the entirecaptured frame, thereby significantly reducing the number of processingsteps as well as reducing the memory requirements for the analysis ofthe captured scene. While the aforementioned example should beconsidered exemplary, it would be readily apparent to one of ordinaryskill given the contents of the present disclosure that the entire framemay be analyzed in some implementations, especially where processingcomplexity and memory requirements are not a design constraint for thecomputing device performing the thresholding analysis.

In some implementations, it may be desirable to begin the thresholdinganalysis with respect to the frame 100 depicted in, for example, FIG. 1Ewith subsequent analyses for temporally preceding frames being analyzedafter the analysis of temporally later frames has been performed. Forexample, as shown in FIG. 1E the baseball 102 has been released from thehand of the pitcher and accordingly, pixel values associated with thebaseball 102 will not be obscured by the pitcher's fingers. Accordingly,the number of pixels that have been determined to be of a baseball maybe greater than the number of pixels associated with a prior capturedscene in which the pitcher's fingers still obscure portions of thebaseball 102. Moreover, due to camera positioning prior to imagecapture, the frame associated with the captured scene of FIG. 1E may bequickly determined as it would be expected that the baseball 102 wouldbe present within the center of the captured scene. In other words, thecenter portion of the captured frames of FIGS. 1A-1E may be analyzed todetermine the captured scene corresponding to baseball 102 release(i.e., the frame which has: (1) determined the positioning of thebaseball 102 to be in (or near) the center of the captured scene; and(2) determined the maximum number of pixel values associated with thebaseball 102 within the captured scene). Accordingly, the analysis mayproceed backwards from the release point and may be constrained down andto the left for right-handed pitchers, or down and to the right forleft-handed pitchers, etc.

Upon determination of the positioning of the baseball 102 within a givenframe, the geometric center of the baseball may be determined. Forexample, in the exemplary frames 100 depicted within FIGS. 1A-1E, thegeometric center of the baseball 102 is determined, and a box 104 ispositioned around the baseball 102 with the geometric center of the box104 being positioned at the geometric center of the baseball 102. Thebox 104 may not be physically positioned within the captured frames butmay instead be representative of portions of the captured frame that areto be segmented from the captured images. In some implementations, thesize of the box 104 may be based upon the predetermined number of pixelsfor which a baseball 102 has not been determined to be present as setforth above. Moreover, the box 104 may have a variety of aspect ratios.For example, the box 104 may have a 1:1 aspect ratio, a 4:3 aspectratio, a 16:9 aspect ratio, and other suitable types of aspect ratio.The aspect ratio chosen may correspond to the aspect ratio of a displayin some implementations. As shown in FIGS. 1A-1E, the exemplary box 104is shown with a 1:1 aspect ratio. Additionally, the box 104 may havedifferent dimensions dependent upon the overall size of the baseball 102within a given frame. For example, in FIG. 1A the box 104 may be largerthan the box 104 located within FIG. 1E. These varying sizes for the boxmay be associated with the size of the baseball within a given frame(i.e., in FIG. 1A, the baseball 102 may appear larger as it isgeometrically closer to the lens of the image capture device then thebaseball 102 shown in FIG. 1E). One reason for these boxes (orsegmentations) is demonstrated with reference to FIGS. 2A-2F.

Referring now to FIGS. 2A-2F, the frames depicted in FIGS. 1A-1E havebeen scaled down and repositioned about the geometric center of thebaseball. Specifically, the boxes 104 depicted in FIGS. 1A-1E nowrepresent a segmented frame that is centered about the geometric centerof the baseball. The transformations depicted in FIGS. 2A-2F allow forfinger placement and rotations to be viewed more clearly as, forexample, the natural translation movement of a thrown pitch has beenremoved from the frames depicted in FIGS. 2A-2F. In other words, theframes depicted in FIGS. 2A-2F allow for the understanding of rotation(spin) effects, while removing the linear (translational) effectsassociated with the pitching motion of the pitcher. Moreover, while thefollowing discussion is primarily described in terms of determination offinger position and ball rotation, it would be readily understood thatthe following described principles may be applied to other portions ofthe anatomy (e.g., wrist position, wrist angle, arm angle, and otherportions of the anatomy, etc.) or baseball orientation (e.g., seamposition, etc.).

FIG. 2A illustrates finger and baseball position at time to. As can beseen within the box 104, graphics have been overlaid onto the capturedimage. Specifically, a circle 206 with crosshairs 204 has been overlaidover the baseball 102, with the center of the crosshairs 204 beingaligned with the determined geometric center of the baseball 102. Thecircumference of the circle 206 corresponds to the circumference of thebaseball 102. Here the circumference of the circle 206 has been scaledup so that it is larger than the circumference of the baseball 102,although it would be appreciated that the circumference of the circle206 could be sized so as to be the same as the circumference of thebaseball 102. In some implementations, the circumference of the circle206 could even be smaller than the circumference of the baseball 102.Regardless of the size of the circumference of the circle 206, thecenter of the crosshairs 204 is aligned with the geometric center of thebaseball 102 and the positioning of the fingers as well as the markerson the baseball 102 are scaled proportionally with the scaling, if done,of the circle 206.

The segmented box 104 may also include a marker 202 a for the middlefinger of the pitcher as well as marker 208 a which is representative ofa marker located on the baseball itself. These markers 202 a and 208 amay correspond to passive markers located on the middle fingernail andbaseball, respectively. As a brief aside, passive markers are typicallya coating that utilizes a retroreflective material that is configured toreflect light that is generated near the camera lens. Through the use ofpassive markers, the aforementioned threshold image post-processingtechniques can be applied so that only the bright reflective markers202, 208 will be sampled with the remaining portions of the image(remainder of the hand, background, baseball, etc.) being ignored ordiscarded. This is illustrated in the projection 200 illustrated in FIG.2A where the background image has been removed with all that remainsbeing the overlaid circle 206, overlaid crosshairs 204 and overlaidpassive markers 202 a, 208 a.

In the illustrated example, the fingernail of the pitcher's middlefinger includes the passive marker as the pitch being thrown is achangeup, in particular a variation of what is known as a “circlechange”. This particular change up grip is identified through theplacement of the thumb and forefinger where they touch in such a waythat they create a “circle” on the side of the baseball. In other pitchvariants, such as a slider, the passive marker may be placed on theforefinger, or any other finger that is determined to be of importancefor that particular pitch or the desired perspective for a given pitch.In some variants, such as the two-camera (or more) variant depicted inFIG. 3, two or more fingers may include passive markers so that they canboth be tracked (e.g., the thumb and middle finger, the thumb andforefinger, forefinger and ring finger, etc.). In some implementations,passive markers may be utilized at a variety of locations (e.g., aportion of the finger nail (as opposed to the entire finger nail)), onthe distal phalange of the finger of interest, on the middle phalange ofthe finger of interest, and/or the proximal phalange of the finger ofinterest. These and other variants would be readily apparent to one ofordinary skill given the contents of the present disclosure.

In some implementations, the passive markers may be obviated in favor ofso-called “active markers”. As a brief aside, active optical systemstrack the position of objects of interest using light sources such aslight-emitting diodes. These light sources are the active markersthemselves and since they emit light, as opposed to reflecting light aswith passive markers, the objects of interest may be tracked with ahigher signal-to-noise ratio, resulting in very low marker jitter andhigher resolution tracking of the object. While active markers may beused, the use of passive markers may be advantageous as they are oftenless bulky, thereby resulting in a more natural feel for the pitcherwhen the pitcher executes his/her throwing motion.

Using the aforementioned thresholding image processing technique, FIG.2B illustrates finger and baseball position at time t₁. As can be seenin FIG. 2B, markers 202 b and 208 b have been overlaid onto the capturedimage and are representative of the middle finger and ball position attime t₁. In some implementations, such as that illustrated in FIG. 2B,markers 202 a, 208 a (from time t₀) are included along with markers 202b, 208 b. FIG. 2C illustrates finger and baseball position at time t₂and now includes markers 202 c and 208 c which is indicative of thepositioning of these markers at time t₂. FIG. 2D illustrates finger andbaseball position at time t₃ and now includes markers 202 d and 208 dwhich is indicative of the positioning of these markers at time t₃. FIG.2E illustrates finger and baseball position at time t₄ and now includesmarkers 202 e and 208 e which is indicative of the positioning of thesemarkers at time t₄. FIG. 2F illustrates finger and baseball position attime t₅ and now includes markers 202 f and 208 f which is indicative ofthe positioning of these markers at time t₅. In FIG. 2F, the positioningof marker 202 f outside of the circle 206 is indicative of the fact thatthe middle finger has now come off the baseball. More or fewer trackedpositions at more or fewer time instances may be tracked in otherimplementations with the foregoing example of FIGS. 2A-2F merely beingexemplary.

In some implementations, thresholding operations may be performed on,for example, the segmented frames illustrated in FIGS. 2A-2F in order toidentify seam location on the baseball 102 in addition to, oralternatively than, the aforementioned passive (or active) markersplaced on the baseball 102. By performing the thresholding analysis foridentification of the seams after segmentation of the frames, processingand memory resources are reduced, although it would be readilyappreciated that this identification and determination of the positionof the seams may also be performed with the frames 100 depicted in FIGS.1A-1E in embodiments in which processing or memory resource limitationsare not a constraint for the design of the system.

Herein lies a salient advantage of the present disclosure over priortracking techniques that merely tracked speed, spin axis, and/or spinrate. Namely, the present disclosure not only can track these parameters(i.e., speed, spin axis, and/or spin rate) after the ball has beenreleased which may be indicative of performance and effectiveness forthe pitch, but may also track how the pitch performance andeffectiveness has been achieved. Accordingly, when effective movementhas been achieved, these parameters have been captured and can becompared against parameters that are captured in the future (or thepast) thereby providing feedback to the pitcher about how to achievethat effective movement. The tracking system of the present disclosuremay also provide near-immediate feedback resulting in more consistencywith a given pitch than prior art tracking techniques. As previouslymentioned, the foregoing example may readily be applied to track otherparameters (e.g., wrist position, wrist angle, seam placement, etc.).These and other variants would be readily apparent to one of ordinaryskill given the contents of the present disclosure.

Exemplary Tracking Systems—

The functionality of the various aspects of the system of FIG. 3described herein may be implemented through the use of software executedby one or more processors (or controllers) and/or may be executed viathe use of one or more dedicated hardware modules, with the architectureof the system being specifically optimized to execute the methodologiesor processes described herein. The use of computing systems is essentialas slight variations in finger, hand, wrist positioning, and the like aswell as the timing of movements involved with the pitching motion arenot detectable by humans with the degree of accuracy necessary in orderto distinguish between, for example, average pitch movement and highlyeffective pitch movement. It is in this context that the use of, forexample, software in combination with, for example, relatively highframe-rate cameras and computing systems improves upon the determinationof how to achieve the outcome of desired pitch movement.

The software disclosed herein is intended to be executed by a computingsystem that reads instructions from a computer-readable medium andexecutes these instructions in one or more processors (or controllers),whether off-the-shelf processors or custom processors. The computingsystem may be used to execute instructions (e.g., program code orsoftware) for causing the computing system to execute the computer codedescribed herein. In some implementations, the computing system operatesas a standalone device or a connected (e.g., networked) device thatconnects to other computer systems.

The computing system may include, for example, a smartphone, a personalcomputer (PC), a tablet PC, a notebook computer, or other device capableof executing instructions (sequential or otherwise) that specify actionsto be taken. In some implementations, the computing system may include aserver. In a networked deployment, the computing system may operate inthe capacity of a server or client in a server-client networkenvironment, or as a peer device in a peer-to-peer (or distributed)network environment. Moreover, a plurality of computing systems mayoperate to jointly execute instructions to perform any one or more ofthe methodologies discussed herein. For example, a smart phone computingsystem may be responsible for image capture, while a remote computingsystem (e.g., computing systems operating within the “cloud”) mayperform the imaging analysis.

An exemplary computing system includes one or more processing units(generally processor apparatus). The processor apparatus may include,for example, a central processing unit (CPU), a graphics processing unit(GPU), a digital signal processor (DSP), a controller, a state machine,one or more application specific integrated circuits (ASICs), one ormore radio-frequency integrated circuits (RFICs), or any combination ofthe foregoing. The computing system may also include a main memory. Thecomputing system may include a storage unit. The processor, memory andthe storage unit may communicate via a bus.

In addition, the computing system may include a static memory, a displaydriver (e.g., to drive a plasma display panel (PDP), a liquid crystaldisplay (LCD), a projector, or other types of displays). The computingsystem may also include input/output devices, e.g., an alphanumericinput device (e.g., touch screen-based keypad or an external inputdevice such as a keyboard), a dimensional (e.g., 2-D or 3-D) controldevice (e.g., a touch screen or external input device such as a mouse, atrackball, a joystick, a motion sensor, or other pointing instrument), asignal capture/generation device (e.g., a speaker, camera, and/ormicrophone), and a network interface device, which may also beconfigured to communicate via the bus.

Embodiments of the computing system corresponding to a client device mayinclude a different configuration than an embodiment of the computingsystem corresponding to a server. For example, an embodimentcorresponding to a server may include a larger storage unit, morememory, and a faster processor but may lack the display driver, inputdevice, and dimensional control device. An embodiment corresponding to aclient device (e.g., a personal computer (PC)) may include a smallerstorage unit, less memory, and a more power efficient (and slower)processor than its server counterpart(s).

The storage unit includes a computer-readable medium on which is storedinstructions (e.g., software) embodying any one or more of themethodologies or functions described herein. The instructions may alsoreside, completely or at least partially, within the main memory orwithin the processor (e.g., within a processor's cache memory) duringexecution thereof by the computing system, the main memory and theprocessor also constituting computer-readable media. The instructionsmay be transmitted or received over a network via the network interfacedevice.

While computer-readable medium is shown in an example embodiment to be asingle medium, the term “computer-readable medium” should be taken toinclude a single medium or multiple media (e.g., a centralized ordistributed database, or associated caches and servers) able to storethe instructions. The term “computer-readable medium” shall also betaken to include any medium that is capable of storing instructions forexecution by the computing system and that cause the computing system toperform, for example, one or more of the methodologies disclosed herein.

Referring now to FIG. 3, an exemplary tracking system 300 is shown anddescribed in detail. In some implementations, the system 300 includesmultiple cameras 302. Camera 302 a is configured to capture video suchas, for example, the captured frames 100 depicted in FIGS. 1A-1E. Aspreviously discussed, the positioning of camera 302 a may be alignedsuch that the baseball 102, at the release point for a given pitcher, ispositioned between the center of the strike zone located at home plate308 and the center of the captured field of view for camera 302 a. Asecond camera 302 b may be utilized in some implementations. The secondcamera 302 b is configured to capture the release point of the baseball102, similar to that field of view captured by camera 302 a. However,camera 302 b captures the release point of the baseball 102 from adifferent vantage point than that image captured by camera 302 a. Forexample, in the series of frames 100 depicted in FIGS. 1A-1E, the secondcamera 302 b may be configured to track the movement of the thumb of thepitcher as the baseball 102 obscures the view of the thumb for camera302 a.

The second camera 302 b is positioned in front of the release point forthe baseball 102, while the first camera 302 a is positioned asdescribed supra. In some implementations, the second camera 302 b ispositioned at an angle 304 that is offset from the path 306 of thepitched baseball 102. The angle 304 of offset may be chosen to providethe second camera 302 b with a clear view of the anatomy of interest forthe pitcher. For example, as shown in FIG. 3, the positioning of thesecond camera 302 b is intended to capture pitches thrown from aright-handed pitcher. However, if the second camera 302 b was positionedto capture pitches thrown from a left-handed pitcher, the second camera302 b may be positioned on the opposite side of the path 306 of thepitched baseball 102. In some implementations, the angle 304 of offsetmay be established at approximately 45°, although it would be readilyapparent that this established angle 304 may be varied in accordancewith the desired field of view for a given pitch.

A third camera 302 c may be utilized in some implementations of system300. The third camera 302 c is configured to capture the baseball 102 inthe area surrounding home plate 308. While the third camera 302 c isshown as being positioned behind home plate 308 in FIG. 3, it would bereadily apparent to one of ordinary skill given the contents of thepresent disclosure that this positioning may be varied dependent uponthe preferences of the individual capturing the field of view for thethird camera 302 c. Unlike the field of view captured by the firstcamera 302 a and the second camera 302 b, the third camera 302 c is notintended to capture the anatomy of the pitcher in his throwing motion.Rather, the third camera 302 c is intended to capture the baseball 102in the area immediately surrounding home plate 308. The utilization ofthe third camera 302 c in combination with the first camera 302 a and/orthe second camera 302, allows for the determination of the axis of spinas well as the spin rate at both the release point of the baseball 102as well as a point when the baseball 102 is near home plate 308. Inother words, the third camera 302 c allows one to determine whether theaxis of spin for the baseball 102 has degraded as the baseball 102 hasfollowed its flight path 306 towards home plate 308. One or moreadditional cameras 302 may be utilized with the system 300 in someimplementations. These one or more additional cameras 302 may be placedalong various points along the flight path 306 of the baseball 102 inorder to provide additional information about the axis of spin for thebaseball 102 as well as spin rate along various portions of the flightpath 306.

The one or more cameras 302 utilized in the system 300 may consist ofhigh-speed cameras that are intended to capture video at one or morehigh-speed frame rates (e.g., 1,000 fps, 2,000 fps, and/or 3,000 fps,etc.). In some implementations, one or more of the cameras 302 mayconsist of smart phone cameras. In some implementations, one or more ofthe cameras may consist of standalone action cameras. The softwaredisclosed herein with reference to FIGS. 2A-2F may be incorporatedwithin the cameras 302 in some implementations. In variants, the cameras302 may only be utilized for image capture and the captured images(captured frames) may be offloaded from the cameras 302 via a wired orwireless network interface. These offloaded frames of captured imagesmay then be processed on a computing device. These and other variantswould be readily apparent to one of ordinary skill given the contents ofthe present disclosure.

Exemplary Methodologies—

Referring now to FIG. 4, one exemplary methodology 400 for utilizingdata captured by, for example, the exemplary tracking system 300 of FIG.3 to provide additional information about the moving object is shown anddescribed in detail. At step 402, a scene is captured using one or morecameras. For example, one camera may capture the release point of apitched baseball from behind the pitcher's throwing arm. Another cameramay capture the release point of a pitched baseball from a vantage pointthat is in front of the pitcher and offset from the path of flight forthe pitched baseball. Yet another camera may capture the pitchedbaseball at an intermediate point along the path of flight for thepitched baseball. Yet another camera may capture the pitched baseballnear the end of its path of flight.

At step 404, the captured scene is graphically virtualized. For example,the features and geometry of a baseball are known and well-understood.Accordingly, an image captured of a moving baseball from one vantagepoint (e.g., camera 302 a in FIG. 3) enables one to recreate othervantage points for the baseball that have not been captured by thecamera. In other words, one image of a baseball from a single vantagepoint enables one to reconstruct the baseball from any other vantagepoint. Similarly, the hand and wrist of a pitcher may be known andaccordingly, the capture of an image from one or more vantage pointsenables the virtual generation of the entire geometry of the hand fromany other vantage point. The captured scene may be virtualized for eachcaptured frame, or a subset of the captured frames.

At step 406, once the captured scene has been virtualized, viewpoints inthe virtualized scene may be altered. For example, the axis of spin maybe determined from the captured scene and the viewpoint may reside oneither end of the axis of spin. Accordingly, the baseball may now beviewed from this altered viewpoint through one or more rotations of thebaseball. The same technique may be applied to any other viewpoint ofinterest. A given viewpoint may be altered multiple times within a givencaptured scene.

Moreover, once a given viewpoint has been established additionalviewpoints may be established by incrementing the viewpoint in threedistinct dimensions. For example, a viewpoint may be created byincrementing along a given three-dimensional coordinate system (e.g.,increment the viewpoint on the x-axis by five (5) degrees, whileincrementing on the y-axis by twenty-seven (27) degrees, etc.). Once thenew viewpoint has been established, the baseball may now be viewedthrough one or more rotations (or partial rotations) from this newviewpoint.

In addition to virtualizing a single captured scene, two or morecaptured scenes may be virtualized. These two or more captured scenesmay be displayed next to one another while each of the two or morecaptured scenes may be individually viewed from any desired viewpoint.For example, two virtualized scenes created from two different pitchesmay be viewed from the same (or differing) viewpoints. For each of thesetwo or more virtualized scenes, the viewpoint axis may be locked inplace and the scene may be viewed through one or more rotations of thebaseball. In addition to customizable viewpoints, the two or morecaptured scenes may be replayed in lock step with one another at avariety of playback rates (e.g., in so-called slow-motion). While it maybe advantageous to replay two or more captured scenes in lockstep, theymay be replayed at differing instances of time and/or at differingplayback rates in certain implementations.

Additionally, using multiple captured scenes of the same pitch may allowfor the determination of whether the axis of spin degrades along theflight path of the ball. For example, the axis of spin may be separatelydetermined at various points along the flight path of the ball and theaxis of spin at each of these various points may be output in agraphical form. One exemplary graphical output is depicted within FIG. 5which includes the distance from the release point, the axis of spin atvarious points along this distance, the spin-rate for the baseball atvarious points along this distance, as well as the velocity at variouspoints along this distance.

Finger placement as a function of both (i) position as well as (ii) seamorientation may also be determined from the virtualized scene as well.Finger placement may also be determined over multiple frames of thecaptured scene as well (e.g., at ball separation from the hand andtwenty frames prior to ball separation as but one non-limiting example).This determined finger placement may also be compared against thesubjective effectiveness of the pitch. Accordingly, finger placement andseam orientation may be compared against the subjective effectiveness ofthe pitch over a given number of pitches to aid in determining how torecreate the most effective pitch. Such information may be useful inassisting in increased effectiveness and consistency for a given pitch.Wrist angle with respect to hand angle may be determined as well. Again,comparing wrist angle with respect to hand angle may be utilized toassist with increased consistency for a given pitch.

This virtualized scene may also be utilized to assist in computationalfluid dynamics (CFD) calculations. For example, the CFD parametersassociated with an “effective” pitch may be compared against the CFDparameters associated with a less-effective pitch (or less-effectivepitches). These CFD parameters may also be used to help determine how tomake the pitch more effective, even if the pitcher has not yet eventhrown the pitch. In other words, the CFD parameters may indicate adifferent seam placement, a different finger placement during release, adifferent wrist angle, etc. Accordingly, data captured during pitchingsessions may be utilized to detail theoretical pitching mechanics thatmay assist the pitcher in obtaining more effective pitches. Moreover,environmental factors (e.g., temperature, elevation, and other weatherconditions) may utilized in combination with the system 300 to assistwith determining theoretical pitching mechanics in a variety ofconditions. These and other variants would be readily apparent to one ofordinary skill given the contents of the present disclosure.

Referring now to FIG. 6, one exemplary usage scenario for the system of,for example, FIG. 3 is shown and described in detail. Specifically, theexemplary methodology 600 of FIG. 6 may be utilized in addition to, oralternatively than, the methodologies and functionality described hereinwith respect to FIGS. 1A-1E, 2A-2F, 4 and 5. Specifically, FIG. 6describes a methodology 600 for the estimation of pitch velocity basedon captured images. Such a methodology 600 may prove to be a much morecost-effective system than acquiring more advanced velocity captureapparatus (e.g., a radar gun). At step 602, the parameters associatedwith baseline image capture may be determined. In some implementations,the positioning of camera 302 a behind the release point of the baseballmay be pre-established. For example, the positioning of camera 302 a maybe established a set distance (e.g., five (5) feet or some otherspecified distance) behind the release point of the baseball.

In some implementations, the baseline of the image capture may bedetermined from camera metadata. For example, camera metadata mayinclude lens parameters, captured framerate, field of view (FOV)parameters, etc. Using this camera metadata, an image captured of abaseball at, for example, the release point of the baseball may allowsoftware located on, or associated with, camera 302 a to determine thedistance between the camera 302 a and the baseball at a given timeinstance (e.g., at time t_(n)). This distance may be determined as thegeometry of the baseball is known and the camera metadata allows thesoftware to determine the overall dimensions of the baseball (e.g., thediameter) as a function of the parameters associated with the camerametadata.

At step 604, one or more subsequent images for the baseball are capturedsubsequent to the baseline image capture. For example, images may becaptured at times T_(n+1), T_(n+2), T_(n+3), etc. At these subsequenttimes, the distance of the baseball from the camera lens may bedetermined as the captured images of the baseball will show the baseballprogressively getting, for example, smaller and smaller. In other words,the dimensions of the baseball (e.g., the diameter of the baseball) willappear to be smaller in the captured images as the baseball gets furtherand further away from the camera 302 a. In some implementations, thecaptured images may be taken from the perspective of camera 302 c, whichis located behind home plate. In such a variant, the dimensions of thebaseball will appear to grow larger and larger as the baseball travelsalong path 306. These and other variants would be readily apparent toone of ordinary skill given the contents of the present disclosure.

At step 606, the velocity of the baseball will be estimated based on thebaseline image capture and the one or more subsequent image captures. Asdiscussed previously herein, the distance of the baseball to the cameralens may be estimated at various points in time. Using these distanceestimations, as well as the framerate of the camera, the software may beable to estimate the velocity of the pitched baseball. In other words,these estimated distances of the baseball from the camera lens may bedivided by the time between the captured frames to provide an estimatedvelocity for the pitched baseball. Such an implementation may bedesirable as it allows, for example, a pitcher to determine the speed ofhis/her pitches using, for example, a smartphone with an application(e.g., software) disposed thereon. In other words, the velocity of thepitcher's pitches may be determined more cost effectively than investingin more costly and advanced velocity capture apparatus (e.g., a radargun).

Exemplary Implementation Examples—

The techniques described herein may be utilized in any number ofcontexts. For example, embodiments disclosed herein may be readilyutilized to assist a pitcher in achieving more consistency with a givenpitch. These given pitches may consist of a four-seam fastball, atwo-seam fastball, a cutter, a splitter, a forkball, a curveball, aslider, a slurve, a screwball, various types of changeups (e.g., acircle changeup, a palmball, etc.), and even knuckleball pitches. Whilethe previously discussed usage scenarios may be considered exemplary, itwould be readily apparent to one of ordinary skill given the contents ofthe present disclosure that other usage scenarios may be utilized aswell.

For example, data associated with various types of pitches as well asvarious professional pitchers may be stored with the software.Accordingly, others would have the opportunity to compare their capturedpitching mechanics and compare these captured pitching mechanics againsta particular pitcher's pitches. For example, a college or high-schoolplayer looking to imitate a particular type of pitch or a particulartype of pitcher would have the opportunity to do so using the softwaredescribed herein. For example, a youth pitcher may have the opportunityto attempt to mimic a highly effective major league pitcher (e.g., GregMaddux's changeup, Mariano Rivera's cutter, Clayton Kershaw's slider,etc.). In other words, the parameters captured of the youth pitcher'spitch may be compared against a professional player's pitch, etc.

It will be recognized that while certain aspects of the presentdisclosure are described in terms of specific design examples, thesedescriptions are only illustrative of the broader methods of thedisclosure and may be modified as required by the particular design.Certain steps may be rendered unnecessary or optional under certaincircumstances. Additionally, certain steps or functionality may be addedto the disclosed embodiments, or the order of performance of two or moresteps permuted. All such variations are considered to be encompassedwithin the present disclosure described and claimed herein.

While the above detailed description has shown, described, and pointedout novel features of the present disclosure as applied to variousembodiments, it will be understood that various omissions,substitutions, and changes in the form and details of the device orprocess illustrated may be made by those skilled in the art withoutdeparting from the principles of the present disclosure. The foregoingdescription is of the best mode presently contemplated of carrying outthe present disclosure. This description is in no way meant to belimiting, but rather should be taken as illustrative of the generalprinciples of the present disclosure. The scope of the presentdisclosure should be determined with reference to the claims.

What is claimed is:
 1. A computer-implemented method for determiningfinger placement with respect to a pitched baseball, comprising thesteps of: capturing a scene of the pitched baseball; segmenting anobject of interest out of the captured scene comprises performing athresholding operation to generate a segmented scene; analyzing thesegmented scene to identify markers associated with the object ofinterest; and comparing the analyzed scene with a prior captured sceneso as to enable a comparison in performance for the pitched baseball;wherein the segmenting of the object of interest comprises performingthe thresholding operation on a pixel-by-pixel basis to determine asubset of the captured scene for the pitched baseball; and wherein thecapturing of the scene of the pitched baseball comprises capturing aplurality of frames of the captured scene and the segmenting of theobject of interest out of the captured scene further comprisesrepositioning the object of interest within the segmented scene withineach of the plurality of frames.
 2. The computer-implemented method ofclaim 1, wherein the performing of the thresholding operation on thepixel-by-pixel basis comprises starting the thresholding operation in anarea of the captured scene dependent upon a handedness for a pitcher ofthe pitched baseball.
 3. The computer-implemented method of claim 1,wherein the performing of the thresholding operation on thepixel-by-pixel basis comprises determining a location of the object ofinterest within a first frame of a plurality of frames of the capturedscene and utilizing the determined location of the object of interestwithin the first frame to determine the location of the object ofinterest within a second frame of the plurality of frames.
 4. Thecomputer-implemented method of claim 3, wherein the performing of thethresholding operation on the pixel-by-pixel basis for the second frameof the plurality of frames is only performed on a subset of pixels ofthe second frame.
 5. The computer-implemented method of claim 4, whereinthe determining of the location of the object of interest comprisesdetermining that a pixel value for a pixel within the first frame iswithin a predetermined range of pixel values.
 6. Thecomputer-implemented method of claim 1, wherein the analyzing of thesegmented scene further comprises performing a second thresholdingoperation on the segmented scene to identify the markers associated withthe object of interest.
 7. The computer-implemented method of claim 6,wherein the performing of the second thresholding operation comprisesdetermining placement of a finger with respect to a geometric center ofthe pitched baseball.
 8. The computer-implemented method of claim 7,wherein the performing of the second thresholding operation furthercomprises determining seam orientation with respect to the geometriccenter of the pitched baseball.
 9. A computer-implemented method fordetermining finger placement with respect to a pitched baseball,comprising the steps of: capturing a scene of the pitched baseball;segmenting an object of interest out of the captured scene by performinga thresholding operation to generate a segmented scene; analyzing thesegmented scene to identify markers associated with the object ofinterest; and comparing the analyzed scene with a prior captured sceneso as to enable a comparison in performance for the pitched baseballwherein the analyzing of the segmented scene further comprisesperforming a second thresholding operation on the segmented scene toidentify the markers associated with the object of interest; and whereinthe performing of the second thresholding operation comprisesdetermining placement of a finger with respect to a geometric center ofthe pitched baseball.
 10. The computer-implemented method of claim 9,wherein the segmenting of the object of interest comprises performingthe thresholding operation on a pixel-by-pixel basis to determine asubset of the captured scene for the pitched baseball.
 11. Thecomputer-implemented method of claim 10, wherein the performing of thethresholding operation on the pixel-by-pixel basis comprises startingthe thresholding operation in an area of the captured scene dependentupon a handedness for a pitcher of the pitched baseball.
 12. Thecomputer-implemented method of claim 10, wherein the performing of thethresholding operation on the pixel-by-pixel basis comprises determininga location of the object of interest within a first frame of a pluralityof frames of the captured scene and utilizing the determined location ofthe object of interest within the first frame to determine the locationof the object of interest within a second frame of the plurality offrames.
 13. The computer-implemented method of claim 12, wherein theperforming of the thresholding operation on the pixel-by-pixel basis forthe second frame of the plurality of frames is only performed on asubset of pixels of the second frame.
 14. The computer-implementedmethod of claim 13, wherein the determining of the location of theobject of interest comprises determining that a pixel value for a pixelwithin the first frame is within a predetermined range of pixel values.15. The computer-implemented method of claim 10, wherein the capturingof the scene of the pitched baseball comprises capturing a plurality offrames of the captured scene and the segmenting of the object ofinterest out of the captured scene further comprises repositioning theobject of interest within the segmented scene within each of theplurality of frames.
 16. The computer-implemented method of claim 9,wherein the performing of the second thresholding operation furthercomprises determining seam orientation with respect to the geometriccenter of the pitched baseball.
 17. A non-transitory computer-readablestorage apparatus comprising a plurality of instructions, that whenexecuted by a processor apparatus, are configured to: receive aplurality of frames of a captured scene of a pitched baseball; segmentan object of interest out of the captured scene via performance of athresholding operation to generate a segmented scene; analyze thesegmented scene to identify markers associated with the object ofinterest; and compare the analyzed scene with a prior captured scene soas to enable a comparison in performance for the pitched baseball;wherein the segmentation of the object of interest comprises performanceof the thresholding operation on a pixel-by-pixel basis to determine asubset of the captured scene for the pitched baseball; and wherein thesegmentation of the object of interest out of the captured scene furthercomprises a reposition operation for the object of interest within thesegmented scene within each of the plurality of frames.
 18. Thenon-transitory computer-readable storage apparatus of claim 17, whereinthe performance of the thresholding operation on the pixel-by-pixelbasis comprises commencement of the thresholding operation in an area ofthe captured scene that is dependent upon a handedness for a pitcher ofthe pitched baseball.
 19. The non-transitory computer-readable storageapparatus of claim 17, wherein the performance of the thresholdingoperation on the pixel-by-pixel basis comprises determination of alocation of the object of interest within a first frame of a pluralityof frames of the captured scene and utilization of the determinedlocation of the object of interest within the first frame to determinethe location of the object of interest within a second frame of theplurality of frames.
 20. The non-transitory computer-readable storageapparatus of claim 19, wherein the performance of the thresholdingoperation on the pixel-by-pixel basis for the second frame of theplurality of frames is only performed on a subset of pixels of thesecond frame.
 21. The non-transitory computer-readable storage apparatusof claim 20, wherein the determination of the location of the object ofinterest comprises determination that a pixel value for a pixel withinthe first frame is within a predetermined range of pixel values.
 22. Thenon-transitory computer-readable storage apparatus of claim 17, whereinthe analysis of the segmented scene further comprises performance of asecond thresholding operation on the segmented scene to identify themarkers associated with the object of interest.
 23. The non-transitorycomputer-readable storage apparatus of claim 22, wherein the performanceof the second thresholding operation comprises determination ofplacement of a finger with respect to a geometric center of the pitchedbaseball.
 24. The non-transitory computer-readable storage apparatus ofclaim 23, wherein the performance of the second thresholding operationfurther comprises determination of seam orientation with respect to thegeometric center of the pitched baseball.